草庐IT

java - 实例变量的 setter 和 getter 的 Junit 测试

全部标签

ruby-on-rails - rspec 路由测试和主机

我看到我可以像这样用rspec测试路由:get("/").shouldroute_to("welcome#index")但我有基于主机名或部分主机名的约束,并在多个主机名之间重定向。测试时如何指定主机名?如何使用正确的配置运行测试?我尝试打印root_url并得到:Missinghosttolinkto!Pleaseprovidethe:hostparameter,setdefault_url_options[:host],orset:only_pathtotrue 最佳答案 同样的错误发生在我每次运行rspecspec/整个错误实

ruby - 在设置环境变量时从 ruby​​ 中退出

我需要在为进程设置环境变量时对进程进行shell处理。我试过这个单线:system"RBENV_VERSION=systemrubyextconf.rb"此语法适用于shell脚本,但不适用于ruby​​。(更新:事实证明此语法毕竟适用于ruby​​,但由于以下原因我未能看到其效果我的特殊用例。)所以我这样做:rbenv_version=ENV['RBENV_VERSION']ENV['RBENV_VERSION']='system'beginsystem"rubyextconf.rb"ensureENV['RBENV_VERSION']=rbenv_versionend我不得不使用这

ruby-on-rails - 如果我调用 Factory.build 以使我的 Controller 测试快速,我怎样才能让 Factory Girl 永远不会访问数据库?

我正在寻求使我的Rails测试更快。我只有520个测试,但它们在bash中运行需要62秒,在Rubymine中运行需要82秒。作为典型Controller测试的示例,我使用此代码以@user身份登录并在CommentsController中为我的RSpecController测试创建基本的@comment:before(:each)do@user=Factory.create(:user)sign_in@user@comment=Factory.create(:comment)end您可能会意识到...这很慢。它构建了一个@user,但也为该用户构建了关联。@comment也是如此。所

ruby - Ruby 是否有正式的规范(如 Java 语言规范 (JLS))?

Ruby是否有明确的规范,类似于Java的Java语言规范。谷歌搜索ruby​​语言规范提供http://ruby-std.netlab.jp/结果,该站点已关闭,我不确定它是否是最新的 最佳答案 有adraft对于formalspecificationruby。它由OpenStandardsPromotionCenter开发的Information-TechnologyPromotionAgency(日本政府机构)提交给JapaneseIndustrialStandardsCommittee然后进一步到InternationalO

ruby - 如何清除 ruby​​ 中 rspec 测试之间的类变量

我有以下类(class):我想确保类url只为所有实例设置一次。classDataFactory@@url=nildefinitialize()beginif@@url.nil?Rails.logger.debug"Settingurl"@@url=MY_CONFIG["myvalue"]endrescueExceptionraiseDataFactoryError,"Error!"endendend我有两个测试:it"shouldlogamessage"doAPP_CONFIG={"myvalue"=>"test"}Rails.stub(:logger).and_return(log

ruby-on-rails - 如何在 rspec 功能测试中访问(设计)current_user?

在设计文档中,他们提供了有关在测试Controller时如何访问current_user的提示:https://github.com/plataformatec/devise/wiki/How-To:-Test-controllers-with-Rails-3-and-4-%28and-RSpec%29但是,在进行功能测试时呢?我正在尝试测试我的一个Controller的创建方法,并且在该Controller中使用了current_user变量。问题是devise中建议的宏使用了@request变量,并且对于功能规范来说它是nil。什么是解决方法?编辑:这是我目前的规范:feature

ruby - 如何获取 BasicObject 实例的类?

我有一个脚本,该脚本使用不带参数的ObjectSpace#each_object进行迭代。然后它打印每个类存在多少个实例。我意识到有些类重新定义了#class实例方法,所以我不得不寻找另一种方法来获取实际的类;假设它存储在变量"klass"中,并且klass===object为真。在Ruby1.8中我可以这样做,假设Object没有被monkeypatched:Object.instance_method(:class).bind(object).call这适用于ActiveSupport::Duration实例:#Ruby1.8#(triestotrickus)20.seconds.

ruby-on-rails - Cucumber 是否不需要编写单元测试?

我对可用于Ruby/ROR的测试框架的数量感到有点困惑。我最近看了CucumberRailscasts并发现它们非常有趣。所以我开始玩游戏,然后努力从概念上看我应该在哪里进行各种测试。似乎很有可能在Cucumber中完成所有可以在单元测试中完成的事情,所以我是否需要编写单元测试,或者我应该只编写我的功能定义并专注于提供尽可能好的覆盖范围开始使用它。我应该使用Rspec还是Test:Unit创建我的单元测试?当我测试Ajax功能时,我应该使用Selenium还是Watir?这里似乎有太多选择,我正在努力寻找使用哪些工具以及边界在哪里。其他人对Cucumber的体验是什么,以及在编写Cuc

ruby-on-rails - 在 Ruby 1.9 中访问类变量的正确方法是什么?

我正在尝试设置一些类变量来存储Rails应用程序中的路径(但我认为这更像是一个ruby​​问题)基本上我的类(class)是这样的classImage但是当我尝试通过执行Image.path_to_images从我的Controller访问@@path_to_images时,我得到一个NoMethodError当我尝试使用Image.class_eval(@@path_to_images)时,我在ImagesController中得到未初始化的类变量@@path_to_images我四处搜索了一下,我所看到的都说这些会起作用,所以我对此很困惑此外,我尝试像这样用ruby​​控制台定义简

ruby - 从 irb 获取所有局部变量或可用方法?

当我进入irb并输入一个不存在的命令时,我收到一条错误消息"undefinedlocalvariableormethod'my_method'formain:Object(NameError)"有没有办法只获取可用的局部变量或方法的列表?这对于探索ruby​​非常有用。 最佳答案 在内核、对象和模块中寻找方法:例如local_variables,instance_methods,instance_variables.还有其他很棒的方法。inspect是另一个。 关于ruby-从irb获取